jellyfin N5105 硬解配置【解决】该客户端与媒体不兼容,服务器未发送兼容的媒体格式 | 您所在的位置:网站首页 › 群晖 hdr › jellyfin N5105 硬解配置【解决】该客户端与媒体不兼容,服务器未发送兼容的媒体格式 |
我的原文在 https://my.oschina.net/finchxu/blog/5601726 ## 一、先解决一个问题 首先解决一个问题,就是播放某些电影的时候,jellyfin提示如上信息“_**该客户端与媒体不兼容,服务器未发送兼容的媒体格式。**_”。 **原因就是:英特尔N5105 CPU不支持VPP色调映射。** > VPP色调映射(VPP tonemapping):是完全基于 Intel 驱动的色调映射。目前仅对部分硬件和 HDR10 视频生效。此项比另一个 OpenCL 实现具有更高的优先级。 具体参见:[https://github.com/jellyfin/jellyfin/issues/8367](https://github.com/jellyfin/jellyfin/issues/8367) 和 [https://github.com/intel/media-driver#video-processing-features](https://github.com/intel/media-driver#video-processing-features) 我的NAS是威联通 QNAP TS-464C N5105。 然后我们开始说解决办法。 电影文件信息是: > 编码: HEVC > 分辨率: 3840x1504 > 帧率: 23.976025 > 比特率: 29622 kbps > 位深度: 10 bit > 动态范围: HDR > 动态范围类型: HDR10 > 色彩空间: bt2020nc 通过视频的信息可以知道,我要播放 HEVC HDR10 视频,而jellfin默认开启了\`VPP色调映射\`,但是N5105这个CPU不支持VPP,所以提示没法播放视频。就这么简单。 **解决办法是:** **(1)首先按照网络的教程或者本文的第二大标题里的提示,配置完jellfin硬件解码。或者你已经配置完了。** **(2)然后关闭jellfin设置里的VPP。位置在:`管理-控制台` ==>`播放-转码`==>`启用 VPP 色调映射` 把这个去掉勾选。** **(3)为了弥补HDR10的损失,我们开启HDR转SDR模式。位置在刚才的VPP下边一点:`启用色调映射` 把这个勾选上。** 至此就已经可以正常打开视频了。 如下图我们看一下效果区别: ![关闭VPP的效果](https://oscimg.oschina.net/oscnet/up-47d9cb6cbff4b5a0c0df2efa19061809ee7.jpg) 上图是关闭\`VPP\`后的效果(步骤2),HDR10的视频一片惨白。 下图是关闭\`VPP\`并`启用色调映射`后的效果(步骤3),HDR转成了SDR,挽救了一些色彩,看起来更饱满,不惨白。 ![](https://oscimg.oschina.net/oscnet/up-5712b5205cd1a8b15ec4a582999b94485c3.jpg) ## 二、QNAP使用docker安装jellfin并开启硬解 ### 2.1 QNAP docker安装jellfin(方法1) 可以参考[https://www.bilibili.com/read/cv17767935/](https://www.bilibili.com/read/cv17767935/) 这位大佬写的使用docker compose的方式安装jellfin。如下所示: ```yaml version: "2.1" services: jellyfin: image: nyanmisaka/jellyfin:latest container_name: jellyfin environment: - PUID=0 - PGID=0 - TZ=Asia/Shanghai volumes: - /share/Container/jellyfin:/config - /share:/media ports: - 12501:8096 - 12502:8920 devices: ``` ### 2.2 QNAP docker安装jellfin(方法2) 我想纯粹使用QNAP的`容器工作站Container Station`来安装。如下所示。 #### 2.2.1 首先修改docker的仓库为国内 ```http http://hub-mirror.c.163.com ``` ![](https://oscimg.oschina.net/oscnet/up-a1adfd83109dfce70fb84ab2e235ae920fd.jpg) #### 2.2.2 创建容器 搜索 nyanmisaka/jellyfin并点击安装。 ![](https://oscimg.oschina.net/oscnet/up-ee615d8694b04518f704632861b0209a888.jpg) 按照如下所示填写: ```bash 进入点:./jellyfin/jellyfin --datadir /config --cachedir /cache --ffmpeg /usr/lib/jellyfin-ffmpeg/ffmpeg ``` ![](https://oscimg.oschina.net/oscnet/up-0b5106396883758053efb6f0bc7a75999de.png) 点击 `高级设置`。 在 `网络` 里,选择默认的\`NAT模式\`,并填写`端口映射`。左边是你希望访问的端口,右边是固定的不要改。 ![](https://oscimg.oschina.net/oscnet/up-141cfc3363f7e931fc78570a93ea86449aa.jpg) `设备` 里,新增如下所示的设备\`Direct Rendering Infrastructure\`这个就是用来硬解的硬件\`dri\`了,并勾选`在特权模式写运行容器` ![](https://oscimg.oschina.net/oscnet/up-eec311e34f72936bacae78f0c47ccc89e67.jpg) `共享文件夹` 里如下所示配置,只需要修改`挂载本机共享文件夹`中的路径为你NAS上存储电影的路径即可。其他都是容器内路径,不需要你修改。 ![](https://oscimg.oschina.net/oscnet/up-0c41f4570bdca3a49d43cdb7fb686576d5e.jpg) 如上图配置结束后,启动容器即可运行。 访问:[http://192.168.124.100:18096/](http://192.168.124.100:18096/) (换成你自己NAS的ip和刚才设定的端口号)就能打开jellfin的网页进行配置了。 #### 2.2.2 配置硬件解码 如下图勾选即可。 ![](https://oscimg.oschina.net/oscnet/up-165d4ef8efd19f0081359f11b8f6102f193.jpg) 注意下图,如果你是N5105的,或者类似的CPU,不要勾选VPP,而是勾选下边的 启用色彩映射。原因在最上边已经说过了。 (这是虚拟世界的懒猫finch xu的博客内容) ![](https://oscimg.oschina.net/oscnet/up-6268759fde395537ccc38179df82e1b2eb7.jpg) 至此完成。 我还发现了一个非docker版本的qnap jellfin:[https://github.com/pdulvp/jellyfin-qnap](https://github.com/pdulvp/jellyfin-qnap) 以后可以试试。 参考: [https://post.smzdm.com/p/a859320l/](https://post.smzdm.com/p/a859320l/) [https://www.bilibili.com/read/cv17767935/](https://www.bilibili.com/read/cv17767935/) [https://github.com/jellyfin/jellyfin/issues/8367](https://github.com/jellyfin/jellyfin/issues/8367) [https://github.com/intel/media-driver#video-processing-features](https://github.com/intel/media-driver#video-processing-features) |
CopyRight 2018-2019 实验室设备网 版权所有 |